package com.bizdk.generator.dto.gen;

import com.bizdk.generator.validate.group.GeneratorInfoGroup;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;

/**
 * 代码生成信息
 */
@Data
public class GeneratorInfo {
    
    /**
     * 作者
     */
    private String author;
    
    /**
     * 邮箱
     */
    private String email;
    
    /**
     *
     */
    @NotEmpty(message = "tableIds should not be null", groups = {GeneratorInfoGroup.Code.class,
            GeneratorInfoGroup.Preview.class})
    private List<Long> tableIds;
    
    /**
     *
     */
    private Long tableId;
    
    /**
     * 模板路径
     */
    private String templatePath;
    
    /**
     * 项目包名
     */
    private String pkgName;
    
    /**
     * 模块名称
     */
    private String moduleName;
    
    /**
     * 项目版本号
     */
    private String version;
    
    /**
     * 生成方式  1：zip压缩包   2：自定义目录
     */
    private String genType;
    
    /**
     * 代码生成路径
     */
    private String codePath;
    
    @NotBlank(message = "projectId should not be blank", groups = {GeneratorInfoGroup.Code.class,
            GeneratorInfoGroup.Preview.class})
    private String projectId;
}
